Using Code Coverage Tools in the Linux Kernel
نویسندگان
چکیده
Defining software reliability is hard enough, let alone ensuring it. However, most all software developers agree on the importance of testing. The often unspoken assumption with testing is that the test programs cover a majority of the source code written. A test covers a line of code if running the test executes the line. Coverage analysis measures how much of the target code is run during a test and is a useful mechanism for evaluating the effectiveness of a system test or benchmark. The GNU development tool gcov allows developers to obtain coverage results for programs compiled with the GNU gcc compiler. In this article, we learn how to instrument the Linux r © kernel to generate code coverage data, and how to visualize results with tools from the Linux Test Project (LTP) [4].
منابع مشابه
Improving the Linux Test Project with Kernel Code Coverage Analysis
Coverage analysis measures how much of the target code is run during a test and is a useful mechanism for evaluating the effectiveness of a system test or benchmark. In order to improve the quality of the Linux® kernel, we are utilizing GCOV, a test coverage program which is part of GNU CC, to show how much of the kernel code is being exercised by test suites such as the Linux Test Project. Thi...
متن کاملGenerating environment model for Linux device drivers
Linux device drivers can't be analyzed separately from the kernel core due to their large interdependency with each other. But source code of the whole Linux kernel is rather complex and huge to be analyzed by existing model checking tools. So a driver should be analyzed with environment model instead of the real kernel core. In the given paper requirements for driver environment model are disc...
متن کاملThe New Linux ’perf’ Tools
1 Abstract The perf events infrastructure is fast moving into being the unifying channel for hardware and software performance analysis. Modern CPUs have hardware dedicated to counting events associated with performance, special registers that allow pinpointing hotspots that can possibly be optimized. Recent developments in the Linux kernel explore these features, solving problems found in prev...
متن کاملkAFL: Hardware-Assisted Feedback Fuzzing for OS Kernels
Many kinds of memory safety vulnerabilities have been endangering software systems for decades. Amongst other approaches, fuzzing is a promising technique to unveil various software faults. Recently, feedback-guided fuzzing demonstrated its power, producing a steady stream of security-critical software bugs. Most fuzzing efforts—especially feedback fuzzing—are limited to user space components o...
متن کاملSoftware Product Line Evolution: the Linux Kernel
Software product lines promote explicit modeling of software variability and systematic reuse of underlying components. Evolution of software product lines occurs both in variability models and assets, such as source code. In this work, we did an empirical study that investigated evolution of the Linux kernel as an example of a product line. We classified different types of edits, and answered ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004